The concept of partitioning a server is well known to increase resource utilization, such resources being most typically processors and memory but also extending to include storage devices. One partitioning solution employed by the applicant herefor is to provide a plurality of virtual partitions or “vPars” whereby system hardware may be carved up into a variety of different combinations, including parts of processors, network cards, storage adapters without regard for any underlying hardware boundary or other physical relationship. The vpars system is described in “Installing and Managing HP-UX Virtual Partitions (vPars)”, First Edition, November 2001, T1335-90001 (vPars version B.01.00 on HP-UX).
As an example, in a server provided with virtual partitions, one instance of an operating system (O/S) is provided on each virtual partition. In order that the server boots up correctly, an additional layer of software between the operating system and the firmware, known as a virtual partition monitor, is provided which effectively creates, launches, reboots, requests resources for, and monitors, at least to the extent that it is aware when a virtual partition crashes, each virtual partition provided in the server. The virtual partition monitor also allocates a set of hardware resources to partitions created thereby.
US2006/0010450, assigned to the applicant herefor, describes an enhancement to virtual partitioning wherein, in addition to the separate instances of the O/S which exist on each virtual partition, a separate instance of firmware is also provided for each partition so the O/S has a pre-defined firmware interface through which it can communicate with the hardware associated with the particular partition.
Notwithstanding the above, and the known capability of dynamically adding and deleting processing resources from a virtual partition (i.e. without requiring a reboot), known virtual partition configurations are not fault tolerant, and fail irretrievably if one of the hardware components associated with the partition fails.
The techniques to be described herein are concerned with improving the hardware fault tolerance of virtual partition configurations, and also enhancing the utilisation of non-faulty hardware resources associated with one or more partitions provided in a server or other system and on which resources said partitions depend for normal operation.